package com.nav.backend.service;

import com.nav.backend.pojo.RingSearch;
import com.nav.backend.pojo.TreeLineSearch;
import com.nav.backend.pojo.TwoPointsSearch;

import java.util.List;

/**
 * HistoryService 接口定义了历史相关的业务逻辑操作
 *
 * @author xiukira
 */
public interface HistoryService {
    /**
     * 获取所有起终点搜索历史
     *
     * @param account String 账户名
     * @return 起终点搜索历史列表 List<TwoPointsSearch>
     */
    List<TwoPointsSearch> twoPointListAll(String account);

    /**
     * 删除起终点搜索历史
     *
     * @param twoPointsSearchId Integer 起终点搜索历史id
     */
    void twoPointDelete(Integer twoPointsSearchId);

    /**
     * 清空起终点搜索历史
     *
     * @param account String 账户名
     */
    void twoPointDeleteAll(String account);

    /**
     * 获取所有环形搜索历史
     *
     * @param account String 账户名
     * @return 环形搜索历史列表 List<RingSearch>
     */
    List<RingSearch> ringListAll(String account);

    /**
     * 删除环形搜索历史
     *
     * @param ringSearchId Integer 环形搜索历史id
     */
    void ringDelete(Integer ringSearchId);

    /**
     * 清空环形搜索历史
     *
     * @param account String 账户名
     */
    void ringDeleteAll(String account);

    /**
     * 获取所有林荫道搜索历史
     *
     * @param account String 账户名
     * @return 林荫道搜索历史列表 List<TreeLineSearch>
     */
    List<TreeLineSearch> treeLineListAll(String account);

    /**
     * 删除环形搜索历史
     *
     * @param treeLineSearchId Integer 林荫道搜索历史id
     */
    void treeLineDelete(Integer treeLineSearchId);

    /**
     * 清空林荫道搜索历史
     *
     * @param account String 账户名
     */
    void treeLineDeleteAll(String account);
}
